package com.ymx.darling.executor.mapping.handler;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;

/**
 * 结果集映射器
 *
 * @author 爱Java的小于
 * @param <T>
 */
public interface ResultSetHandler<T> {
    /**
     * 将结果集转换为指定类型实例
     *
     * @param resultSet 结果集
     * @return list 默认为ArrayList
     * @throws SQLException 肯能会抛出此异常
     */
    List<T> handle(ResultSet resultSet) throws SQLException;


    /**
     * 处理游标结果集
     * @param resultSet 结果集
     * @return T
     * @throws SQLException 可能会抛出的异常
     */
    T handleCursor(ResultSet resultSet) throws SQLException;
}
